1. Technical Field
The present invention relates in general to assigning logical drive letters to peripheral devices in data processing systems and in particular to assigning drive letters to such peripheral devices based on the user's preferences. Still more particularly, the present invention relates to mapping drive letters to a particular volume, device, or device partition and retaining the drive letter assignment for that volume, device, or device partition despite changes in the hardware topology.
2. Description of the Related Art
Several operating systems adhere to the convention of assigning drive letters to identify peripheral devices such as floppy disk drives, hard disk drives, and CDROM drives. Single drive letters, from A to Z, are utilized to permit system access to such peripherals. Generally, drive letter assignments are made during system initialization. A few peripheral devices, such as floppy drives and hard drives, may receive drive letter assignments based on settings in the system BIOS. The remaining peripheral devices receive drive letter assignments based on the next available logical drive letter.
As a result of these conventions, similar peripherals on different computers may be assigned different drive letters. For example, it is not uncommon for a 31/2" floppy drive to be assigned to either drive "A:" or "B:". CDROM drives on different computers may frequently be assigned either "D:" or "E:" depending on the number of hard drives or hard drive partitions in the computer.
The conventions described above may also result in drive letter assignments in the same computer varying--intentionally or unintentionally--for a variety of reasons. For example, systems which boot multiple operating systems may end up with their drive letter assignments different in the two environments. Adding a new partition or deleting an old one on a hard drive "moves" the drive letter assignments of all following partitions or devices.
There are a number of situations where it would be desirable to consistently assign the same drive letter to a specific device. One such situation is a system which boots multiple operating systems as described above. Another involves application roll outs to large numbers of customers. The same drive letter configuration is desirable for consistency in application installation, but different hardware configurations may result in different drive letters.
Mobile computers also may have different peripherals, including different hard drives, attached at different times. It may be useful to have certain partitions or devices retain the same drive letter regardless of what other peripherals are currently attached, particularly for ergonomic reasons. For example, a user may wish a certain PCMCIA hard drive to have the same drive letter assignment, regardless of the number of other PCMCIA hard drives installed. In that situation, the user may count on a certain file always being present on, say, the "H:" drive rather than having to determine which drive letter is assigned to the PCMCIA hard drive containing that file.
Many applications are sensitive to the drive letter to which they are installed, for example by the path to data or configuration preferences files. "Moving" a drive letter assignment by adding or deleting a hard drive partition can break such applications installed on those drives. Furthermore, in the past removable media was limited primarily to floppies and CDROMs. With the advent of Plug'n Play, however, "removable" hard drives are becoming much more common.
In the past, efforts have been directed toward solving a related problem: maintaining the same drive letter for physical devices that are moved between computers. In one proposed solution, a drive control file containing device serial numbers and a drive letter associated with each device is created in the root directory of the boot device and processed during startup. However this system does not permit different partitions or volumes in the same device (e.g., CDROMs in a CDROM changer or cartridges in a Bernoulli drive) to be assigned individual drive letters and does not permit a single drive letter to have more than one assignment.
Another proposal for maintaining drive letter assignments as a device or volume is moved between computers involves marking each drive in the root directory with the assigned drive letter. This method is limited since read-only media such as CDROMs cannot be marked. Moreover, there exists a danger of different devices, assigned the same drive letter while inserted in different computers, could have conflicting assignments when installed in the same computer.
It would be desirable to be able to access specific devices, device partitions, or volumes in a given computer using the same drive letter regardless of changes in hardware topology. It would also be desirable if priorities could be set between assignment of a drive letter based on the device and assignment based on the volume. It would also be desirable to utilize the same drive letter assignment for more than one device and/or volume.